/********************************************************************************
 * Project Name		[JavaEE_Web]
 * File Name     	[JSP01.java]
 * Creation Date 	[2015-01-01]
 * 
 * Copyright© ge.y.yang@gmail.com All Rights Reserved
 * 
 * Work hard, play harder, think big and keep fit
 ********************************************************************************/
package _notes.jsp;

/**
 * JSP基础语法
 * 
 * @author 不落的太阳(Sean Yang aka ShortPeace)
 * @version 1.0
 * @since jdk 1.8
 * 
 */
public final class JSP01 {

	public void JSPConcept() {
		/**
		 * JSP[Java Server Pages], 它和Servlet技术一样, 都是Sun公司定义的一种用于开发动态Web应用的技术
		 * <br/>
		 * 开发JSP和HTML相类似, JSP页面的访问路径与普通HTML页面的访问路径形式完全一样, 但HTML只能为用户提供静态数据,
		 * 而Jsp技术允许在页面中嵌套Java代码, 为用户提供动态数据<br/>
		 * 
		 * JSP的运行原理:<br/>
		 * 1. JSP本质上是一个Servlet<br/>
		 * 2. 每个JSP页面在第一次被访问时, JSP引擎将它翻译成一个Servlet源程序, 接着再将它编译成Servlet的class类文件
		 * <br/>
		 * 3. 再由Web容器[Servlet引擎]像调用普通Servlet程序一样的方式来装载和解释执行这个由JSP页面翻译成的Servlet程序
		 * <br/>
		 */
	}

	public void JSPTemplate() {
		/**
		 * JSP模板元素[JSP Template]<br/>
		 * 
		 * JSP页面中的静态HTML内容称之为JSP模版元素<br/>
		 * 在静态的HTML内容之中可以嵌套JSP的其他各种元素来产生动态内容和执行业务逻辑<br/>
		 * JSP模版元素定义了网页的基本骨架, 即定义了页面的结构和外观<br/>
		 */
	}

	public void JSPExpression() {
		/**
		 * JSP表达式[JSP Expression]<br/>
		 * 
		 * 语法: <%= 要输出的内容 %><br/>
		 * 
		 * JSP表达式提供了将一个java变量或表达式的计算结果输出到客户端的简化方式<br/>
		 * JSP表达式中的变量或表达式后面不能有分号<br/>
		 * JSP表达式被翻译成Servlet程序中的一条out.print(…)语句<br/>
		 */
	}

	public void JSPScriptlet() {
		/**
		 * JSP脚本片段[JSP Scriptlet]<br/>
		 * 
		 * 语法: <%...%><br/>
		 * 
		 * JSP脚本片断中可以定义变量, 执行基本的程序运算, 调用其他Java类, 访问数据库, 访问文件系统等普通Java程序所能实现的功能
		 * <br/>
		 * JSP脚本片断中的Java代码将被原封不动地移进由JSP页面所翻译成的Servlet的_jspService方法中<br/>
		 * JSP脚本片断之中只能是符合Java语法要求的程序代码, 除此之外的任何文本, HTML标记, 其他JSP元素都必须在脚本片断之外编写
		 * <br/>
		 * 一个JSP页面可以有多个脚本片断[每个脚本片断代码嵌套在各自独立的一对<%...%>之间]<br/>
		 * 多个脚本片断之间可以嵌入文本, HTML标记和其他JSP元素<br/>
		 * 多个脚本片断中的代码可以相互访问<br/>
		 * 单个脚本片断中的Java语句可以是不完整的, 但是, 多个脚本片断组合后的结果必须是完整的Java语句<br/>
		 */
	}

	public void JSPDeclaration() {
		/**
		 * JSP声明[JSP Declaration]<br/>
		 * 
		 * 语法: <%!...%><br/>
		 * 
		 * JSP声明里的代码将被插入进Servlet的_jspService方法的外面<br/>
		 * JSP声明可用于定义JSP页面转换成的Servlet程序的静态代码块, 成员变量和方法<br/>
		 * 多个静态代码块, 变量和函数可以定义在一个JSP声明中, 也可以分别单独定义在多个JSP声明中<br/>
		 * JSP声明中不能使用隐含对象, JSP隐含对象的作用范围仅限于Servlet的_jspService方法<br/>
		 */
	}

	public void JSPComments() {
		/**
		 * JSP注释[JSP Comments]<br/>
		 * 
		 * 语法: <%--注释内容--%><br/>
		 * 在scriptlet中还可以使用Java的注释<br/>
		 */
	}
}
